home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / gtk-2.0 / gtk / gtkmenushell.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-04-25  |  4.8 KB  |  132 lines

  1. /* GTK - The GIMP Toolkit
  2.  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  3.  *
  4.  * This library is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU Lesser General Public
  6.  * License as published by the Free Software Foundation; either
  7.  * version 2 of the License, or (at your option) any later version.
  8.  *
  9.  * This library is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.     See the GNU
  12.  * Lesser General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU Lesser General Public
  15.  * License along with this library; if not, write to the
  16.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17.  * Boston, MA 02111-1307, USA.
  18.  */
  19.  
  20. /*
  21.  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
  22.  * file for a list of people on the GTK+ Team.  See the ChangeLog
  23.  * files for a list of changes.  These files are distributed with
  24.  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
  25.  */
  26.  
  27. #ifndef __GTK_MENU_SHELL_H__
  28. #define __GTK_MENU_SHELL_H__
  29.  
  30.  
  31. #include <gdk/gdk.h>
  32. #include <gtk/gtkcontainer.h>
  33.  
  34.  
  35. G_BEGIN_DECLS
  36.  
  37. #define    GTK_TYPE_MENU_SHELL        (gtk_menu_shell_get_type ())
  38. #define GTK_MENU_SHELL(obj)        (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_MENU_SHELL, GtkMenuShell))
  39. #define GTK_MENU_SHELL_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_MENU_SHELL, GtkMenuShellClass))
  40. #define GTK_IS_MENU_SHELL(obj)        (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_MENU_SHELL))
  41. #define GTK_IS_MENU_SHELL_CLASS(klass)    (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_MENU_SHELL))
  42. #define GTK_MENU_SHELL_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_MENU_SHELL, GtkMenuShellClass))
  43.  
  44.  
  45. typedef struct _GtkMenuShell       GtkMenuShell;
  46. typedef struct _GtkMenuShellClass  GtkMenuShellClass;
  47.  
  48. struct _GtkMenuShell
  49. {
  50.   GtkContainer container;
  51.   
  52.   GList *children;
  53.   GtkWidget *active_menu_item;
  54.   GtkWidget *parent_menu_shell;
  55.   
  56.   guint button;
  57.   guint32 activate_time;
  58.  
  59.   guint active : 1;
  60.   guint have_grab : 1;
  61.   guint have_xgrab : 1;
  62.   guint ignore_leave : 1;    /* unused */
  63.   guint menu_flag : 1;        /* unused */
  64.   guint ignore_enter : 1;
  65. };
  66.  
  67. struct _GtkMenuShellClass
  68. {
  69.   GtkContainerClass parent_class;
  70.   
  71.   guint submenu_placement : 1;
  72.   
  73.   void (*deactivate)     (GtkMenuShell *menu_shell);
  74.   void (*selection_done) (GtkMenuShell *menu_shell);
  75.  
  76.   void (*move_current)     (GtkMenuShell        *menu_shell,
  77.                 GtkMenuDirectionType direction);
  78.   void (*activate_current) (GtkMenuShell *menu_shell,
  79.                 gboolean      force_hide);
  80.   void (*cancel)           (GtkMenuShell *menu_shell);
  81.   void (*select_item)      (GtkMenuShell *menu_shell,
  82.                 GtkWidget    *menu_item);
  83.   void (*insert)           (GtkMenuShell *menu_shell,
  84.                 GtkWidget    *child,
  85.                 gint          position);
  86.   gint (*get_popup_delay)  (GtkMenuShell *menu_shell);
  87.  
  88.   /* Padding for future expansion */
  89.   void (*_gtk_reserved1) (void);
  90.   void (*_gtk_reserved2) (void);
  91.   void (*_gtk_reserved3) (void);
  92. };
  93.  
  94.  
  95. GType gtk_menu_shell_get_type          (void) G_GNUC_CONST;
  96. void  gtk_menu_shell_append            (GtkMenuShell *menu_shell,
  97.                     GtkWidget    *child);
  98. void  gtk_menu_shell_prepend           (GtkMenuShell *menu_shell,
  99.                     GtkWidget    *child);
  100. void  gtk_menu_shell_insert            (GtkMenuShell *menu_shell,
  101.                     GtkWidget    *child,
  102.                     gint          position);
  103. void  gtk_menu_shell_deactivate        (GtkMenuShell *menu_shell);
  104. void  gtk_menu_shell_select_item       (GtkMenuShell *menu_shell,
  105.                     GtkWidget    *menu_item);
  106. void  gtk_menu_shell_deselect          (GtkMenuShell *menu_shell);
  107. void  gtk_menu_shell_activate_item     (GtkMenuShell *menu_shell,
  108.                     GtkWidget    *menu_item,
  109.                     gboolean      force_deactivate);
  110. void  gtk_menu_shell_select_first      (GtkMenuShell *menu_shell,
  111.                     gboolean      search_sensitive);
  112. void _gtk_menu_shell_select_last       (GtkMenuShell *menu_shell,
  113.                     gboolean      search_sensitive);
  114. void  _gtk_menu_shell_activate         (GtkMenuShell *menu_shell);
  115. gint  _gtk_menu_shell_get_popup_delay  (GtkMenuShell *menu_shell);
  116. void  gtk_menu_shell_cancel            (GtkMenuShell *menu_shell);
  117.  
  118. void  _gtk_menu_shell_add_mnemonic     (GtkMenuShell *menu_shell,
  119.                                         guint         keyval,
  120.                                         GtkWidget    *target);
  121. void  _gtk_menu_shell_remove_mnemonic  (GtkMenuShell *menu_shell,
  122.                                         guint         keyval,
  123.                                         GtkWidget    *target);
  124.  
  125. gboolean gtk_menu_shell_get_take_focus (GtkMenuShell *menu_shell);
  126. void     gtk_menu_shell_set_take_focus (GtkMenuShell *menu_shell,
  127.                                         gboolean      take_focus);
  128.  
  129. G_END_DECLS
  130.  
  131. #endif /* __GTK_MENU_SHELL_H__ */
  132.